package cn.springboot.health;

import org.springframework.boot.actuate.health.Health;
import org.springframework.boot.actuate.health.HealthIndicator;
import org.springframework.stereotype.Component;

/**
 * @author liufl E-mail:Huberier@allpyra.com
 * @version 创建时间：2017年9月27日 下午2:03:35
 * 自定义检查应用健康度--只有跟本应用相关的应用都可用才算UP
 * 
 * http://localhost:8080/health    检查应用状态UP  DOWN
 * http://localhost:8080/beans     来查看所有的 Spring Bean
 * http://localhost:8080/shutdown  来关闭服务
 * http://localhost:8080/metrics   包括 JVM 的线程数、内存、GC 数据等等……，
 * 		还可以通过 metrics 收集实时的业务数据，例如每分钟用户登陆数量、每分钟文件同步数量、实时的缓存命中率……等等
 * 		内置了两个 Service，CounterService 可以用来做简单的累加累减，GaugeService 可以用来存放简单的 double 值，数据都存放在内存中
 */
@Component
public class ServerHealth implements HealthIndicator {
    @Override
    public Health health() {
    	return new Health.Builder()
	    .withDetail("tair", "timeout") // some logic check tair
	    .withDetail("tfs", "ok") // some logic check tfs
	    .status("500")
	    .down()
	    .build();
    }
}

